package com.jy.service;

import com.jy.common.enums.ResponseWrapper;
import com.jy.common.model.login.BackstageLogin;
import com.jy.common.model.login.LoginByCodeParam;
import com.jy.common.model.login.ReceptionLoginParam;
import com.jy.common.model.user.param.UpdateAvatar;
import com.jy.common.model.user.param.UpdateUserBgDto;
import com.jy.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.servlet.http.HttpServletRequest;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author fzg
 * @since 2024-11-08
 */
public interface UserService extends IService<User> {

    /**
     * 前台登陆
     */
    ResponseWrapper receptionLogin(ReceptionLoginParam param);


    ResponseWrapper getUserInfo(HttpServletRequest request);

    ResponseWrapper uploadImg(String filePath);

    ResponseWrapper disLikeThisDynamicApi(Integer userAidByToken, Integer dynamicAid);

    ResponseWrapper backstageLogin(BackstageLogin param);

    ResponseWrapper updateUserBg(Integer userAidByToken, UpdateUserBgDto param);

    ResponseWrapper updateAvatar(Integer userAidByToken, UpdateAvatar param);

    ResponseWrapper getUserAllInfoInSetting(Integer userAidByToken);

    ResponseWrapper getUserDetails(Integer userAidByToken, Integer userAid);

    ResponseWrapper getFollowsAndFans(Integer userAidByToken, Integer userAid);

    ResponseWrapper loginByCode(LoginByCodeParam param);

    ResponseWrapper getMyBusinessCard(Integer userAidByToken);

    ResponseWrapper getCollectList(Integer userAidByToken, Integer userAid);

    ResponseWrapper getMyPost(Integer userAidByToken, Integer userAid);
}
